跳到主要内容

美化终端命令行显示

· 阅读需 3 分钟
Ryan
Cloud-Native Operations Engineer

Linux命令行提示符默认是白色,很多时候不太方便查看命令和记录,而且默认是显示的完整路径,如果路径过
长,开发和看起来都不方便,所以改变一下终端命令行颜色和格式。

PS(Prompt Sign)命令提示符,PS1是Linux终端用户的一个环境变量,用来定义命令行提示符的参数。

在设定PS1环境变量时,需要用到预设的一些参数来设定PS1。

PS1的常⽤参数以及含义:

\d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
\H :完整的主机名称
\h :仅取主机名中的第一个名字
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
\v :BASH的版本信息
\w :完整的工作目录名称
\W :利用basename取得工作目录名称,只显示最后一个目录名

:下达的第几个命令

$ :提示字符,如果是root用户,提示符为 # ,普通用户则为 $

查看当前PS1的设置:

echo $PS1
'\u@\h:\w\$'
#含义:
#[当前用户名@主机名:完整工作目录 ]$

设置PS1 样式

当前用户的 .bashrc 环境配置中,在底部添加PS1并赋值:

vim	~/.bashrc
PS1="\u@\h:\W\$"
export PS1
source ~/.bashrc

颜色设置参数

\[\e[F;Bm\].....\[\e[0m\] 或者
\[\033[F;Bm\].....\[\033[0m\]
其中“F”为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47,\[\e[0m\] 结束颜色设定。
“B”还可以设置其他格式,例如为1时,将显示加亮加粗的文字,详见下表

F 字体颜⾊B背景颜⾊颜⾊其他格式
3040⿊⾊代码含义
3141红⾊0OFF
3242绿⾊1⾼亮显⽰
3343黄⾊4underline
3444蓝⾊5闪烁
3545紫红⾊7反⽩显⽰
3646青蓝⾊8不可⻅
3747⽩⾊

样式1

export PS1='\[\033[01;31m\]\u\[\033[00m\]@\[\033[01;32m\]\h\[\033[00m\][\[\033[01;34m\]\t\[\033[00m\]]\[\033[01;36m\]\w\[\033[00m\] \[\033[01;33m\]\$\[\033[00m\]:'